package com.heyou.ticket.pojo;

import lombok.Data;
import org.springframework.ai.tool.annotation.ToolParam;

import java.math.BigDecimal;
import java.time.LocalDateTime;

@Data
public class TicketBookVo {

    /**
     * 预定编号
     */
    @ToolParam(description = "预定编号")
    private String bookId;

    /**
     * 乘客姓名
     */
    @ToolParam(description = "乘客姓名")
    private String customerName;

    /**
     * 乘客编号
     */
    @ToolParam(description = "乘客编号")
    private String customerNumb;

    /**
     * 手机号码
     */
    @ToolParam(description = "手机号码")
    private String phone;

    /**
     * 预定时间
     */
    @ToolParam(description = "预定时间 默认为当前时间 格式为：yyyy-MM-dd HH:mm:ss")
    private LocalDateTime bookTime;

    /**
     * 预定状态（1 已预定 2 已退订）
     */
    @ToolParam(description = "预定状态（1 已预定 2 已退订）")
    private String bookStatus;

    /**
     * 机票价格
     */
    @ToolParam(description = "机票价格")
    private BigDecimal price;

    /**
     * 出发城市
     */
    @ToolParam(description = "出发城市")
    private String cityFrom;

    /**
     * 抵达城市
     */
    @ToolParam(description = "抵达城市")
    private String cityTo;

    /**
     * 出发机场
     */
    @ToolParam(description = "出发机场")
    private String airportFrom;

    /**
     * 抵达机场
     */
    @ToolParam(description = "抵达机场")
    private String airportTo;

    /**
     * 起飞时间
     */
    @ToolParam(description = "起飞时间")
    private LocalDateTime leaveTime;

    /**
     * 抵达时间
     */
    @ToolParam(description = "抵达时间")
    private LocalDateTime arriveTime;

    /**
     * 航空公司
     */
    @ToolParam(description = "航空公司")
    private String airlines;

    /**
     * 舱位类型
     */
    @ToolParam(description = "舱位类型")
    private String accomType;

    /**
     * 是否删除
     */
    @ToolParam(description = "是否删除 1 是 0 否，默认为0")
    private String wthrDel;

    /**
     * 创建人员
     */
    @ToolParam(description = "创建人员，默认为系统管理员")
    private String createBy;

    /**
     * 创建时间
     */
    @ToolParam(description = "创建时间，默认为当前时间")
    private LocalDateTime createTime;

    /**
     * 修改人员
     */
    @ToolParam(description = "修改人员，默认为系统管理员")
    private String updateBy;

    /**
     * 修改时间
     */
    @ToolParam(description = "修改时间，默认为当前时间")
    private LocalDateTime updateTime;

    /**
     * 备注说明
     */
    @ToolParam(description = "备注说明，默认为空")
    private String remark;
}
